package com.jxmcloud.business.cut.service.user;

import com.jxmcloud.business.cut.dtoCommon.CashDetailInfoDto;
import com.jxmcloud.business.cut.vo.user.PlayerInfoVo;
import com.jxmcloud.business.cut.vo.user.UserCashDetailItemVo;

import java.util.List;

/**
 * 用户奖励信息
 */
public interface IUserCashDetailListService extends IUserService {

    boolean addNewCashDetail(PlayerInfoVo player, UserCashDetailItemVo newCash);

    UserCashDetailItemVo getCashDetailItemByProgressId(PlayerInfoVo player, Integer progressId);       // 根据进程获取零钱明细

    boolean makeCashDetailByProgressId(PlayerInfoVo player, Integer progressId);                    // 根据流程ID 创建奖励

    boolean revertMakeCashDetailByProgressId(PlayerInfoVo player, Integer progressId);                    // 回滚根据流程ID 创建奖励
    boolean makeOrderCashDetailByProgressId(PlayerInfoVo player, Integer progressId);               // 根据流程ID 创建订单

    boolean revertMakeOrderCashDetailByProgressId(PlayerInfoVo player, Integer progressId);               // 回滚根据流程ID 创建订单
    CashDetailInfoDto packVotoDto(UserCashDetailItemVo vo);                                         // 打包数据
    List<CashDetailInfoDto> packPlayer(PlayerInfoVo player);                                        //


    /**
     * 清空奖励信息
     * @param player
     */
    void clearCashDetail(PlayerInfoVo player);
}
